package com.heima.article.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.article.dto.ArticleDto;
import com.heima.model.article.dto.ArticleHomeDto;
import com.heima.model.article.dto.ArticleInfoDto;
import com.heima.model.article.pojos.ApArticle;
import com.heima.model.article.vos.HotArticleVo;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.mess.ArticleVisitStreamMess;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

public interface ApArticleService extends IService<ApArticle> {

    /**
     * 根据参数加载文章列表
     *
     * @param type 1为加载更多  2为加载最新
     * @param dto
     * @return
     */

    public ResponseResult load(ArticleHomeDto dto, Short type);


    //    加载缓存所有数据
    public ResponseResult loadAll(ArticleHomeDto dto, Short type, Boolean flag);


    //    保存app相关文章
    public ResponseResult saveArticle(@RequestBody ArticleDto dto);

    /**
     * 加载文章详情 数据回显
     *
     * @param dto
     * @return
     */
    public ResponseResult loadArticleBehavior(ArticleInfoDto dto);


    /**
     * 更新文章的分值  同时更新缓存中的热点文章数据
     * @param mess
     */
    public void updateScore(ArticleVisitStreamMess mess);

}